home *** CD-ROM | disk | FTP | other *** search
/ MacHack 1997 / MacHack 1997.toast / Hacks / Hacks ’97 / Warrior’s Progress / source code / Source / Libraries / Announcer / Toggle.cp < prev    next >
Encoding:
Text File  |  1997-06-28  |  475 b   |  44 lines  |  [TEXT/CWIE]

  1. // Toggle.cp
  2.  
  3. #ifndef Toggle_h
  4. #include "Toggle.h"
  5. #endif
  6.  
  7. Toggle::Toggle( bool initialValue )
  8.   : value( initialValue )
  9.   {
  10.   }
  11.  
  12. void Toggle::Set()
  13.   {
  14.     if ( !value )
  15.       {
  16.         value = true;
  17.         Announce();
  18.       }
  19.   }
  20.  
  21. void Toggle::Clear()
  22.   {
  23.     if ( value )
  24.       {
  25.         value = false;
  26.         Announce();
  27.       }
  28.   }
  29.  
  30. void Toggle::Flip()
  31.   {
  32.     value = !value;
  33.     Announce();
  34.   }
  35.  
  36. void Toggle::operator=( bool newValue )
  37.   {
  38.     if ( value != newValue )
  39.       {
  40.         value = newValue;
  41.         Announce();
  42.       }
  43.   }
  44.